package com.project.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.project.bean.SupplierBean;

import java.util.List;

public interface ISupplierService {
    /**
     * ####分页动态查询供应商信息
     * 输入：页码，供应商名称，经营范围
     * 处理：分页动态查询供应商信息
     * 输出：分页对象
     * 供应商信息：供应商编号，供应商名称，负责人，经营范围
     * @param pageNum
     * @param supplierName
     * @param scope
     * @return
     */
    IPage<SupplierBean> cutFindByItem(Integer pageNum,String supplierName,String scope);

    /**
     * 按id查询供应商信息
     * 输入：供应商编号
     * 处理：根据供应商id，查询供应商信息
     * 输出：供应商对象
     * 供应商信息：供应商编号，供应商名称，负责人，负责人电话、供应商地址，经营范围
     * @param supplierId
     * @return
     */
    SupplierBean findById(Integer supplierId);

    /**
     * 按id修改供应商信息
     * 输入：供应商id，新负责人，新电话
     * 处理：根据供应商id，修改对应负责人和电话信息
     * 输出：ok
     * @param newHead 新负责人
     * @param newTel 新电话
     * @param supplierId 供应商id
     */
    void updateById(Integer supplierId,String newHead,String newTel);

    /**
     * 查看供应商是否存在
     * 输入：供应商名称
     * 处理：根据供应商名称查询供应商对象。
     * 返回：ok/no
     * @param supplierName
     * @return
     */
    SupplierBean findByName(String supplierName);


    /**
     * 导入供应商
     * 输入：excel上传文件对象
     * 处理：
     * 1、将excel上传文件对象，转化为供应商集合
     * 2、循环遍历供应商集合，查询供应商名称是否存在，如果不存在，添加供应商
     * 输出：ok
     */
    /**
     * 添加供应商
     * 输入：供应商对象
     * 处理：添加供应商对象
     * 输出：ok
     * 供应商信息：供应商名称，负责人，负责人电话、供应商地址，经营范围
     * @param supplierBean
     */
    void add(SupplierBean supplierBean);


    /**
     * 查询所有供应商信息
     * 输入：无
     * 处理：查询所有供应商信息
     * 输出：供应商集合
     * 供应商信息：供应商编号，供应商名称
     * @return
     */
    List<SupplierBean> findAll();

}
